package it.polimi.authentication.web.beans;

import java.util.ArrayList;
import java.util.List;

import it.polimi.authentication.ejb.usermanagement.AddNewEscursione;
import it.polimi.authentication.ejb.usermanagement.AddNewHotel;
import it.polimi.authentication.ejb.usermanagement.ListaEscursione;
import it.polimi.authentication.ejb.usermanagement.ListaHotel;
import it.polimi.authentication.ejb.usermanagement.dto.EscursioneDTO;
import it.polimi.authentication.ejb.usermanagement.dto.HotelDTO;

import javax.ejb.EJB;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;

import org.primefaces.context.RequestContext;
import org.primefaces.model.DualListModel;




@ManagedBean (name="RetrieveEscursione")
@SessionScoped
public class RetrieveEscursione {
	

	@EJB
	private ListaEscursione LE;
	@EJB
	private AddNewEscursione ANE;
	
	private ArrayList<EscursioneDTO> EscursioneL;
	private ArrayList<String> EscLSel;
 


	public RetrieveEscursione()
	{
	}
	
	public ArrayList<EscursioneDTO> getEscursioneL() {
		return EscursioneL;
	}



	public void setEscursioneL(ArrayList<EscursioneDTO> escursioneL) {
		EscursioneL = escursioneL;
	}



	public ArrayList<String> getEscLSel() {
		return EscLSel;
	}





	public void setEscLSel(ArrayList<String> escLSel) {
		EscLSel = escLSel;
	}



	public void myEsc()
	{
		
		EscursioneL = LE.EscursioneList(); 
		
		for (int i=0; i<EscursioneL.size(); i++)
		{
			System.out.println (EscursioneL.get(i).getNome());
			
		}
		//System.out.println("la mappa"+citta);
		
	}
	
	
	
	public void CancellaE()
	{
		if(!this.EscLSel.isEmpty()){
			ANE.canc(EscLSel);
			FacesContext context = FacesContext.getCurrentInstance();  
			context.addMessage(null, new FacesMessage("Escursione cancellato/i con successo!", "" )); 
			
			FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put("RetrieveEscursione", null);		

			RequestContext context2 = RequestContext.getCurrentInstance();
			context2.update("formE");
		}
		else
		{
			FacesContext context = FacesContext.getCurrentInstance(); 
			context.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR ,"Attenzione!", "Seleziona almeno un'escursione da cancellare!"));
		}
		
	}
	
}
